pub trait YS<T, R> {
    async fn play(&mut self, param: T) -> R;
}